//
//  CryptoHTTPKit.h
//  CryptoHTTPKit
//
//  Created by Dongxiang Xu on 2025/11/12.
//
#import "AFHTTPSessionManager.h"


NS_ASSUME_NONNULL_BEGIN

/**
 * 加密HTTP请求管理器
 * 基于AFHTTPSessionManager封装,实现AES-CBC加密、HMAC-SHA256签名
 * 与Python crypto_client.py保持完全一致的加密逻辑
 */
@interface CryptoHTTPKit : AFHTTPSessionManager



/**
 * 发送加密POST请求
 * @param path API路径(相对于baseURL)
 * @param parameters 请求参数(将被AES加密)
 * @param success 成功回调,返回解密后的响应数据
 * @param failure 失败回调
 */
- (void)encryptedPOST:(NSString *)path
           parameters:(nullable NSObject *)parameters
              success:(nullable void (^)(NSDictionary *responseObject))success
              failure:(nullable void (^)(NSError *error))failure;

/**
 * 发送加密PUT请求
 * @param path API路径(相对于baseURL)
 * @param parameters 请求参数(将被AES加密)
 * @param success 成功回调,返回解密后的响应数据
 * @param failure 失败回调
 */
- (void)encryptedPUT:(NSString *)path
           parameters:(NSObject *)parameters
             success:(nullable void (^)(NSDictionary *responseObject))success
             failure:(nullable void (^)(NSError *error))failure;


@end

NS_ASSUME_NONNULL_END
